package com.micro.service;

import com.micro.dto.TrainMealOrderDTO;
import com.micro.entity.TrainMealOrder;
import com.micro.request.MealOrderRequest;

import java.util.List;

public interface TrainMealOrderService {
    
    // 创建火车餐订单
    TrainMealOrder createOrder(MealOrderRequest request);
    
    // 根据用户名获取订单列表
    List<TrainMealOrderDTO> getOrdersByUsername(String username);
    
    // 根据用户ID获取订单列表
    List<TrainMealOrder> getUserOrders(Long userId);
    
    // 根据订单ID获取订单详情
    TrainMealOrder getOrderDetails(Long orderId);
    
    // 更新订单状态
    void updateOrderStatus(Long orderId, String status);
    
    // 根据订单状态获取订单列表
    List<TrainMealOrder> getOrdersByStatus(String status);
    
    // 根据列车ID获取订单列表
    List<TrainMealOrder> getOrdersByTrainId(Long trainId);
    
    // 根据订单编号获取订单
    TrainMealOrder getOrderByOrderNumber(String orderNumber);
}
